home *** CD-ROM | disk | FTP | other *** search
- /*
- 2009 - Copyright by Bee <http://www.honeybeenet.altervista.org>.
- This program is free software; you can redistribute it and/or
- modify it under the terms of the GNU General Public License
- as published by the Free Software Foundation; either version 2
- of the License, or (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- */
-
- function beefree_w_yahoo_domain(selfIndex, stack)
- {
- //case insensitive (gmi)
- //var regexp = /search\.yahoo\.com\//gmi;
- var address = stack["address"];
- var regexp = /(\/\/|\.)yahoo\.com\//gmi;
- return beefree_regexp_test(address, regexp);
- }
-
- function beefree_w_yahoo_host(selfIndex, stack)
- {
- //case insensitive (gmi)
- var hostname = stack["hostname"];
- var regexp = /yahoo\.com/gmi;
- var regexp1 = /yahoo\.net/gmi;
- var regexp2 = /yimg\.com/gmi;
- return beefree_regexp_test(hostname, regexp) ||
- beefree_regexp_test(hostname, regexp1) || beefree_regexp_test(hostname, regexp2);
- }
-
- function beefree_w_yahoo_replace(selfIndex, stack)
- {
- var address = stack["address"];
- var current_page = stack["current_page"];
- //http://*.yahoo.com/**http%3a//address.com/Linux
- //http://*.yahoo.com/*http%3a//address.com/Linux
- var URL1=/(\/\/|\.)yahoo\.com\/.*(\/\*\*|\/\*)/gmi;
- //http://rdre1.yahoo.com/click?u=http://asdsd.net/
- var URL2=/(\/\/|\.)yahoo\.com\/click\?u/gmi;
- var is_ok = beefree_is_hyperlink(address) &&
- (beefree_substr_test(address, "/*") || beefree_substr_test(address, "click?u=")) &&
- (beefree_regexp_test(address, URL1) || beefree_regexp_test(address, URL2));
- if (is_ok)
- {
- var done = false;
- var address_new = "";
- address_new = beefree_query_cut_and_translate_address(address, "/**", true);//cut & true
- if(!done && address_new != address)
- {
- done = true;
- address = address_new;
- }
- address_new = beefree_query_get_and_translate_address(address, "u", false);
- if(!done && address_new != address)
- {
- done = true;
- address = address_new;
- }
- address_new = beefree_query_cut_and_translate_address(address, "/*", true);//cut & true
- if(!done && address_new != address)
- {
- done = true;
- address = address_new;
- }
- }
- return address;
- }
-
- function beefree_w_yahoo_accept(selfIndex, stack)
- {
- var address = stack["address"];
- var current_page = stack["current_page"];
- return beefree_is_hyperlink(address) &&
- !beefree_is_protocol(address, "javascript:") &&
- !beefree_is_anchor_magic(address, current_page) &&
- !beefree_is_anchor(address);
- }
-
- function beefree_w_yahoo_confirm(selfIndex, stack)
- {
- var address = stack["address"];
- var address_original = stack["address_original"];
- var current_page = stack["current_page"];
- return !((beefree_website_get(selfIndex)["test.domain"])(selfIndex, stack)) || address != address_original ||
- beefree_host_from_address(address) != beefree_host_from_address(current_page);
- }
-
- (function(){
- var data = new Array();
- data["enabled"] = true;
- data["system"] = true;
- data["version"] = 1;
- data["name"] = "Yahoo";
- data["test.host"] = beefree_w_yahoo_host;
- data["test.domain"] = beefree_w_yahoo_domain;
- data["referer.remove"] = true;
- data["useragent.remove"] = true;
- data["links.remove"] = true;
- data["links.recursion"] = true;
- data["links.metaengine"] = true;
- data["links.onload"] = true;
- data["links.ignoredomain"] = false;
- data["links.function.accept"] = beefree_w_yahoo_accept;
- data["links.function.replace"] = beefree_w_yahoo_replace;
- data["links.function.confirm"] = beefree_w_yahoo_confirm;
- beefree_h_script_add(data);
- })();
-
-